﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LightCAD.MathLib.CSG
{
   class triangulateio
    {
       public List<double> pointlist;                                               /* In / out */
        public List<double> pointattributelist;                                      /* In / out */
        public List<int> pointmarkerlist;                                          /* In / out */
        public int numberofpoints;                                            /* In / out */
        public int numberofpointattributes;                                   /* In / out */

        public List<int> trianglelist;                                             /* In / out */
        public List<double> triangleattributelist;                                   /* In / out */
        public List<double> trianglearealist;                                         /* In only */
        public List<int> neighborlist;                                             /* Out only */
        public int numberoftriangles;                                         /* In / out */
        public int numberofcorners;                                           /* In / out */
        public int numberoftriangleattributes;                                /* In / out */

        public List<int> segmentlist;                                              /* In / out */
        public List<int> segmentmarkerlist;                                        /* In / out */
        public int numberofsegments;                                          /* In / out */

        public List<double> holelist;                        /* In / pointer to array copied out */
        public int numberofholes;                                      /* In / copied out */

        public List<double> regionlist;                      /* In / pointer to array copied out */
        public int numberofregions;                                    /* In / copied out */

        public List<int> edgelist;                                                 /* Out only */
        public List<int> edgemarkerlist;            /* Not used with Voronoi diagram; out only */
        public List<double> normlist;                /* Used only with Voronoi diagram; out only */
        public int numberofedges;                                             /* Out only */
    };
}
